Virtualized network service management and diagnostics

ABSTRACT

A device monitors, for a software-defined networking wide area network (SD-WAN) deployment, a set of virtualized network services of the SD-WAN deployment, and applies a set of diagnostic tests to evaluate the set of virtualized network services. The device detects, based on monitoring the set of virtualized network services and in connection with applying the set of diagnostic tests, an event associated with a virtualized network service. The device analyzes, using an analytics model of SD-WAN operation, the event to identify an issue associated with the virtualized network service, and determines, based on the analytics model of SD-WAN operation, a recommendation relating to remediating the issue. The device generates an abstraction layer user interface to represent the set of virtualized network services and to convey the recommendation relating to remediating the issue, and implements, after providing the abstraction layer user interface, the recommendation to remediate the issue.

BACKGROUND

Network function virtualization can be used to virtualize networkservices to improve network flexibility, reduce costs associated withestablishing new network deployments, and/or the like. For example,cloud computing resources can be used to replace physical purpose builtload balancers, firewalls, intrusion detection devices, and/or the likewith virtualized load balancers, virtualized firewalls, virtualizedintrusion detection devices, and/or the like. A software-definednetworking wide area network (SD-WAN) can be deployed in connection withvirtualized network services to decouple network hardware (e.g., whichcan be implemented using dedicated hardware and/or allocated cloudresources) from control systems for the network hardware. In this way,networking deployments can be established to enable organizations tocommunicate data between different physical locations using, forexample, the Internet rather than using expensive private wide areanetworks (WANs) using, for example multiprotocol layer switching (MPLS)techniques.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1A-1E are diagrams of an example implementation described herein.

FIG. 2 is a diagram of an example environment in which systems and/ormethods, described herein, can be implemented.

FIG. 3 is a diagram of example components of one or more devices of FIG.2.

FIG. 4 is a flow chart of an example process for virtualized networkservice management and diagnostics.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

The following detailed description of example implementations refers tothe accompanying drawings. The same reference numbers in differentdrawings can identify the same or similar elements.

An SD-WAN deployment can be used to provide a combination of physicalnetwork services and virtualized network services. In enterprisescenarios, an organization can have multiple physical locations (e.g., aheadquarters location, a branch location, a data center location, and/orthe like) that can be connected using network services deployed in anSD-WAN configuration. Each network service (i.e., physical networkservice or virtualized network service) can be associated with adifferent vendor and a vendor-specific management portal. For example, asingle organization can use a first management portal for managing afirst virtualized network service associated with a first vendor, and asecond management portal for managing a second virtualized networkservice associated with a second vendor. When an organization switchesservice providers for a virtualized network service in an SD-WANdeployment, the organization can need to retrain employees, download newmanagement software, redesign proprietary tools, and/or the like. Thiscan be time consuming, expensive, and resource intensive (e.g., usingexcessive network resources, computing resources, and/or the like).

Some implementations described herein provide a service managementplatform to perform end-to-end diagnostic testing and remediation oferrors for multiple different virtualized network services, to providean abstraction layer user interface for managing the multiple differentvirtualized network services, and/or the like. In this case, the servicemanagement platform can decouple management of an SD-WAN deployment fromspecific vendors providing specific virtualized network services of theSD-WAN deployment. In this way, the service management platform canreduce a utilization of computing resources to train and/or retrainemployees, to download multiple different management portals, and/or thelike. Further, by providing automatic diagnostic testing andremediation, the service management platform reduces a computingresource utilization relating to attempting to use malfunctioningvirtualized network services by reducing an amount of time thatvirtualized network services remain malfunctioning relative tohuman-based intervention.

FIGS. 1A-1E are diagrams of an example implementation 100 describedherein. As shown in FIG. 1A, example implementation 100 can include aservice management platform 102, a client device 104, and an SD-WANdeployment 106. In some implementations, service management platform 102can be implemented in a cloud computing environment to managevirtualized network services of SD-WAN deployment 106. For example,service management platform 102 can act as an orchestration device thatperforms end-to-end diagnostic testing and remediation of issues formultiple different virtualized network services. Additionally, oralternatively, service management platform 102 can be implementedoutside of a cloud computing environment.

As further shown in FIG. 1A, SD-WAN deployment 106 can include one ormore networking environments. For example, SD-WAN deployment 106 caninclude a first networking environment associated with a first physicallocation of an organization (e.g., a headquarters), a second networkingenvironment associated with a second physical location of anorganization (e.g., a branch office), and/or the like. Additionally, oralternatively, SD-WAN deployment 106 can include multiple networkingenvironments at a common location. In some implementations, eachnetworking environment of SD-WAN deployment 106 can include networkresources (e.g., hardware resources, cloud resources, and/or the like).For example, a networking environment can include one or more vendorapplications, one or more virtualized network services, one or morephysical network services, and/or the like deployed to enable operationsat one or more locations connected using the multiple networkingenvironments and supported by multiple vendors.

As shown in FIG. 1B, an example SD-WAN deployment 106 can include aheadquarters network, an orchestration cloud network, and a branchoffice network. Although some implementations are described herein interms of three networks in SD-WAN deployment 106, other SD-WANdeployments are possible.

As further shown in FIG. 1B, the headquarters network can include a setof end-point client devices 120. Each end-point client device 120 canconnect to a universal customer premises equipment (uCPE) 122, which canprovide external connectivity, such as to the orchestration cloudnetwork, to the branch office network (e.g., via the orchestration cloudnetwork), to an external network (e.g., the Internet via theorchestration cloud network), and/or the like.

As shown in FIG. 1B, the branch office network can include a set ofend-point client devices 124. Each end-point client device 124 canconnect to a universal customer premises equipment (uCPE) 126, which canprovide external connectivity, such as to the orchestration cloudnetwork, to the headquarters network (e.g., via the orchestration cloudnetwork), to an external network (e.g., the Internet via theorchestration cloud network), and/or the like. In some implementations,end-point client devices 120 and 124 can be user devices (e.g., laptopcomputers, desktop computers, mobile phones, etc.) that can provideaccess to information in an enterprise network. In some implementations,uCPEs 122 and 126 can each be servers providing a virtualized networkfunction (VNF) for the SD-WAN deployment.

As further shown in FIG. 1B, the orchestration cloud network can includea set of gateway devices 128, a service management platform 102, avirtual customer premises equipment (vCPE) 130, and/or the like. Forexample, the orchestration cloud network can include a first gatewaydevice 128 that is an edge device or router for providing access betweenuCPE 122 and the orchestration cloud network. Additionally, oralternatively, the orchestration cloud network can include a secondgateway device 128 that is an edge device or router for providing accessbetween uCPE 126 and the orchestration cloud network. Additionally, oralternatively, the orchestration cloud network can include a thirdgateway device 128 that is an edge device or router for providing accessbetween the orchestration cloud network and an external network, such asthe Internet, another enterprise network, and/or the like. In someimplementations, the orchestration cloud network can be a cloudcomputing environment that provides computing resources to instantiategateway devices 128, service management platform 102, and/or the like.In some implementations, vCPE 130 can provide access to a virtualprivate cloud within the orchestration cloud network, thereby providingan on-demand configurable pool of shared computing resources for anorganization within a public cloud for multiple organizations.

In some implementations, SD-WAN deployment 106 can enable servicemanagement platform 102 to perform failure detection. For example,service management platform 102 can monitor uCPEs 122 and 126 (andmultiple virtualized network functions thereof), gateway devices 128,vCPE 130, service management platform 102 (e.g., using a self-monitoringfunctionality), and/or the like to detect an issue, such as aconnectivity failure. In this way, using virtualized network servicesfor SD-WAN deployment 106 provides improved granularity of monitoringrelative to hardware based network deployments (e.g., customer edgerouters and provider edge routers, where a monitoring device can belimited to queries of external physical devices to determine routereachability and link status). For example, service management platform102 can monitor the multiple virtualized network functions, a softwaredefined networking overlay of SD-WAN deployment 106, a service chaindeployment (e.g., a set of virtualized network services forming aservice chain, such as a firewall, a load balancer, an intrusiondetection device, etc.) in SD-WAN deployment 106, and/or the likeregardless of vendor, hardware type, and/or the like.

In some implementations, based on using virtualized network serviceswith service management platform 102, SD-WAN deployment 106 can beimplemented using commercial off-the-shelf (COTS) technology, therebyincreasing deployment flexibility by enabling white-box usage ratherthan dedicated hardware. In some implementations, SD-WAN deployment 106can include an OpenStack deployment with a set of applicationprogramming interfaces, can include a set of global application specificpolicies to provide granular control of functionality of the SD-WANdeployment, and can maintain one or more service level agreements.

As shown in FIG. 1C, service management platform 102 can include a setof modules to perform a set of functionalities. For example, servicemanagement platform 102 can include a diagnostics and troubleshootingservice 140, which can include a device health test component 142, areset/upgrade component 144, a data path test component 146, anapplication session test component 148, a management connectivitycomponent 150, a provisioning validation component 152, and/or the like.In some implementations, service management platform 102 can include anend-user API 154 and one or more vendor APIs 156.

Diagnostics and troubleshooting service 140 includes one or morecomputing resources to perform diagnostics to identify issues andtroubleshooting to resolve the issues for a set of resources and/orservices. For example, diagnostics and troubleshooting service 140 caninclude a set of components described herein to perform issueidentification and resolution for a set of virtualized networkingdevices (e.g., uCPEs 122 and 126, vCPE 130, etc.), a set of virtualizednetwork services, a set of virtualized network service controllers,and/or the like. In some implementations, diagnostics andtroubleshooting service 140 can communicate with different vendorprovided devices using different vendor APIs 156. For example,diagnostics and troubleshooting service 140 can use vendor APIs 156 tocommunicate with dedicated hardware devices, white-box uCPEs, servicechains, cloud based virtualized customer premises equipment (vCPE),and/or the like.

In some implementations, diagnostics and troubleshooting service 140 canprovide end-user API 154 to enable an end-user (e.g., of client device104) to control diagnostics and troubleshooting service 140 and one ormore vendor-specific resources and/or services without requiringend-user knowledge of the one or more vendor APIs 156. In someimplementations, diagnostics and troubleshooting service 140 can providean abstraction layer using end-user API 154. For example, diagnosticsand troubleshooting service 140 can communicate with other clientdevices used by customers, technicians, operators, and/or the like byenabling access to end-user API 154 to an enterprise portal, a chatbot,a device API, and/or the like. By providing the access to end-user API154, diagnostics and troubleshooting service 140 abstracts vendorprovided resources and/or services to different customers, technicians,operators, devices, and/or the like, thereby obviating a need to learnnew API commands, customize device programming, and/or the like eachtime a new resource or service is deployed.

Device health test component 142 includes one or more computingresources allocated to perform one or more diagnostic tests. Forexample, device health test component 142 can receive, via end-user API154, a request to perform a diagnostic test, and can use a vendor API156 to perform the diagnostic test on a service, such as a vendorapplication, a virtualized network service, a physical network service,and/or the like. In some implementations, device health test component142 can perform a diagnostic test when a new service is ordered forprovisioning. For example, based on a customer requesting a newvirtualized network service, and service management platform 102provisioning the new virtualized network service, device health testcomponent 142 can perform one or more diagnostic tests to determinewhether the new virtualized network service is operating without issues.Additionally, or alternatively, when an issue is detected for avirtualized network service (e.g., based on receiving a trouble ticket,determining a failure of a diagnostic test, and/or the like), devicehealth test component 142 can perform a set of diagnostic tests todetermine a status of the virtualized network service, and determine aresolution for the issue. In some implementations, device health testcomponent 142 can obtain a test suite, a list of autonomous tests,and/or the like, and can execute diagnostic tests of the test suite, thelist of autonomous tests, and/or the like. In some implementations,device health test component 142 can obtain results of executingdiagnostic tests, can abort execution of diagnostic tests (e.g., upondetecting an issue to reduce a resource utilization relative tocontinuing execution), can schedule execution of diagnostic tests (e.g.,for a time when less than a threshold resource utilization is expectedto avoid interruption to virtualized network services), and/or the like.

Reset/upgrade component 144 includes one or more computing resources toperform a reset to a virtualized network service and/or a virtualizednetwork device. In some implementations, reset/upgrade component 144 canalter an allocation of resources for and/or provide end-to-endmonitoring of a virtualized network service and/or a virtualized networkdevice to upgrade the virtualized network service and/or virtualizednetwork device.

Data path test component 146 includes one or more computing resources toimplement a diagnostic test. For example, data path test component 146can apply a diagnostic test to a data path in a virtualized networkfunction. For example, data path test component 146 can determinewhether end-point client devices 120 and 124 have internet connectivityvia a data path of SD-WAN deployment 106. In this case, data path testcomponent 146 can enable monitoring of end-point client devices 120 and124 for service management platform 102, thereby enabling a moregranular detection of issues in SD-WAN deployment 106 than othertechniques that perform monitoring on an orchestration cloud network.

Application session test component 148 includes one or more computingresources to test an application session. For example, applicationsession test component 148 can determine whether a session of avirtualized network service and/or an application communicatingtherewith is operating with an issue.

Management connectivity component 150 includes one or more computingresources to perform one or more diagnostic tests relating toconnectivity for management of an SD-WAN deployment. In someimplementations, management connectivity component 150 may store andexecute one or more diagnostics test specifications (e.g., which may beJSON data models stored in a data structure) that specify a set of teststo be executed and a process for executing the set of tests. In someimplementations, management connectivity component 150 may be amicro-service, such as a diagnostics and troubleshooting micro-service,a device abstraction micro-service, a device/service specificmicro-service, and/or the like.

Provisioning validation component 152 includes one or more computingresources allocated to validate provisioning of one or more networkservices. For example, when a customer is to order a new virtualizednetwork service associated with first resources (e.g., hardware orsoftware resources), provisioning validation component 152 can usesecond resources to monitor the first resources and provide statusinformation identifying whether the first resources are correctlyallocated, whether there are any issues with the first resources (e.g.,based on one or more diagnostic tests being performed, and/or the like).In some implementations, provisioning validation component 152 canidentify a new virtualized network service for deployment in SD-WANdeployment 106, and can add the new virtualized network service to agroup of monitored virtualized network services that are to be monitoredusing service management platform 102. In this way, provisioningvalidation component 152 ensures that the new network service isevaluated using diagnostic tests that are executed by service managementplatform 102.

As shown in FIG. 1D, and by reference number 160, service managementplatform 102 can receive service information identifying a state ofSD-WAN deployment 106. For example, service management platform 102 canreceive service information identifying a state of one or more vendorapplications (e.g., which may be implemented as micro-services), one ormore virtualized network services, one or more physical networkservices, and/or the like of one or more networking environments. Inthis way, service management platform 102 can enable centralized controland/or configuration of networking environments of SD-WAN deployment106.

In some implementations, service management platform 102 can receiveinformation associated with detecting an issue associated with SD-WANdeployment 106. For example, service management platform 102 canautomatically obtain information associated with detecting an issue(e.g., based on periodic queries, based on event triggers, and/or thelike). Additionally, or alternatively, service management platform 102can receive user input associated with requesting status information fora network service, such as a virtualized network service. In this case,service management platform 102 can obtain event data identifying one ormore events associated with the virtualized network service.

Additionally, or alternatively, service management platform 102 canidentify fault data identifying one or more faults associated with thevirtualized network service, such as an exception thrown by thevirtualized network service, an error associated with the virtualizednetwork service, and/or the like. Additionally, or alternatively,service management platform 102 can identify service level agreement(SLA) information, associated with identifying a failure to satisfy anSLA requirement. For example, service management platform 102 can storeSLA information for a virtualized network service and can obtain data toconfirm whether the SLA is satisfied, such as network connectivity data,domain name server data, dynamic host configuration protocol data,reliability data, responsiveness data, reporting data, and/or the like.Additionally, or alternatively, service management platform 102 canidentify repair data, failure data, and/or diagnostic data associatedwith one or more previous attempts to repair an issue with a virtualizednetwork service.

In some implementations, service management platform 102 canautomatically obtain data regarding a virtualized network service basedon a proactive monitoring procedure. For example, service managementplatform 102 can automatically obtain the data periodically duringoperation of the virtualized network service. Additionally, oralternatively, service management platform 102 can obtain the data basedon a coactive monitoring procedure. For example, service managementplatform 102 can automatically obtain the data during provisioning ofthe virtualized network service, activation of the virtualized networkservice, workflow service verification of the virtualized networkservice, and/or the like. Additionally, or alternatively, servicemanagement platform 102 can obtain the data based on a reactivemonitoring procedure. For example, service management platform 102 canautomatically obtain the data based on detecting a fault, an alarm, aparticular type of event, an edit to a system log, an SLA violation,and/or the like.

In some implementations, service management platform 102 can generate ananalytics model of SD-WAN operation based on the data. For example,service management platform 102 can perform a pre-processing operation,a model training operation, a model verification operation, and/or thelike on the data to generate the analytics model of SD-WAN operation, asdescribed herein. In some implementations, service management platform102 can perform the pre-processing operation to pre-process the data togenerate the analytics model. For example, service management platform102 can pre-process the data to structure the data for furtherprocessing. In some implementations, service management platform 102 canconvert textual data into numeric data, convert unstructured data intostructured column data, remove anomalous data (e.g., data that differsfrom an average value by a threshold amount), remove incomplete data,and/or the like. In this way, service management platform 102 canorganize the data for processing using machine learning techniques togenerate an analytics model.

In some implementations, service management platform 102 can process thedata, after pre-processing the data and using a machine learningtechnique, to generate the analytics model of SD-WAN operation. Forexample, service management platform 102 can determine a set ofpredictors for issues in SD-WAN operation, predictors for normal SD-WANoperation, and/or the like. A predictor can refer to a value for aninstance of a virtualized network service, vendor application, orphysical network service, such as a packet drop rate, a bit error rate,a latency, a throughput, a rate of trouble ticket inflow, and/or thelike. For example, service management platform 102 can use a deeplearning technique to process the data to determine that a subset ofvariables are predictors of, for example, an issue in SD-WAN operation.In this case, service management platform 102 can perform, for example,a dimensionality reduction procedure to reduce a quantity of variablesin the model of SD-WAN operation, thereby enabling subsequent predictionwith reduced processing utilization relative to including variables thatare not predictors or do not satisfy a threshold level ofpredictiveness.

In some implementations, service management platform 102 can obtaininformation associated with diagnosing the issue associated with SD-WANdeployment 106. For example, service management platform 102 can performconnectivity checks using one or more virtualized network devices, suchas uCPE 122 or 124, vCPE 130, and/or the like. Additionally, oralternatively, service management platform 102 can perform a devicehealth check. For example, service management platform 102 can accessone or more physical or virtualized devices to determine a processorstate, a memory state, an interface state, and/or the like.Additionally, or alternatively, service management platform 102 canperform a data path test. For example, service management platform 102can determine whether an end-point client device has Internetconnectivity.

As further shown in FIG. 1D, and by reference number 162, servicemanagement platform 102 can analyze service information to detectissues. For example, using the analytics model of SD-WAN operation, andservice information regarding a state of SD-WAN deployment 106, servicemanagement platform 102 can detect an issue. In some implementations,service management platform 102 can apply a set of diagnostic tests toobtain the service information and/or to detect issues associated withSD-WAN deployment 106. For example, service management platform 102 canexecute a set of diagnostic tests in accordance with a test-suiteworkflow specification, which can define a sequence of tests, a set ofconditional flows for selection of tests (e.g., service managementplatform 102 can use one or more configured instructions, which includeone or more conditional instructions, to dynamically select diagnostictests to execute based on results of previous executed diagnostictests), a set of service tags for identifying virtualized networkservices to test, a set of vendor tags for identifying vendor APIs withwhich to communicate to execute tests, and/or the like. In this case,service management platform 102 can receive information as a result ofexecuting the set of diagnostic tests, and can perform end-to-end faultanalysis using machine learning techniques to identify an issue, todetermine a cause of an issue, and/or the like. In some implementations,service management platform 102 can execute one or more diagnostic testsbased on a type of virtualized network service being provided in SD-WANdeployment 106. For example, service management platform 102 can executea first type of diagnostic test for a first type of virtualized networkservice and a second type diagnostic test for a second type ofvirtualized network service.

In some implementations, service management platform 102 can analyze theservice information to identify a parameter that deviates from anexpected parameter value. For example, service management platform 102can determine, based on the analytics model of SD-WAN operation that aparticular parameter (e.g., a memory utilization parameter, a bandwidthparameter, a jitter parameter, a traceroute parameter, etc.) isassociated with a particular range of values during normal operation. Inthis case, service management platform 102 can, based on analyzing theservice information, determine that the particular parameter deviatesfrom the particular range of values to detect an issue. In someimplementations, service management platform 102 can apply weights totens, hundreds, thousands, or millions of parameters relating to SD-WANdeployment 106 based on the analytics model of SD-WAN operation, and candetect an issue with SD-WAN deployment 106 based on analyzing theparameters after applying the weights.

As further shown in FIG. 1D, and by reference number 164, based on theanalytics model of SD-WAN operation, service management platform 102 cangenerate a recommendation. For example, service management platform 102can generate a recommendation to perform self-healing, such as arecommendation relating to adjusting a connection (e.g., by physicallyadjusting a cable or electronically adjusting one or more connectionparameters), generating a trouble ticket to trigger a repair, and/or thelike. In this case, based on the analytics model of SD-WAN operation,service management platform 102 can identify that a particular event isassociated with a threshold likelihood of relating to a particularissue, and can identify that a particular resolution to the issue isassociated with a threshold efficacy. In some implementations, servicemanagement platform 102 can analyze a set of stored recommendationsrelating to previous issues to match a previous issue to a currentissue. In this case, service management platform 102 can generate arecommendation to apply a resolution that was previously applied to theprevious issue that matches the current issue. In some implementations,service management platform 102 can use machine learning to generate therecommendation. For example, service management platform 102 can usedata associated with previous parameter adjustments applied to SD-WANdeployments to determine a parameter adjustment that can be used toresolve a current issue with SD-WAN deployment 106. In someimplementations, service management platform 102 can use supervisedmachine learning. For example, service management platform 102 canrecommend generating trouble tickets to resolve a first set of issues,can monitor actions performed by technicians based on the troubletickets, and can generate subsequent recommendations to automaticallyresolve a second set of issues based on the actions performed by thetechnicians to resolve the first set of issues. In this way, by usingsupervised machine learning, service management platform 102 can reducea utilization of processor resources to generate a model forrecommending resolutions to issues relative to unsupervised machinelearning.

As further shown in FIG. 1D, and by reference number 166, servicemanagement platform 102 can automatically implement the particularresolution based on generating the recommendation. Additionally, oralternatively, service management platform 102 can provide an alert torecommend the particular resolution. In this way, based on automaticallymonitoring a network with virtualized network services, servicemanagement platform 102 can resolve problems and/or identify problemsfor resolution faster than is possible for a human, thereby reducing aninterruption to network services.

In some implementations, based on a result obtaining informationassociated with diagnosing an issue, service management platform 102 canperform a repair procedure for SD-WAN deployment 106. For example,service management platform 102 can automatically reset or restart avirtualized network function (VNF), a customer premises equipment (CPE),and/or the like. Additionally, or alternatively, service managementplatform 102 can repair or modify a configuration of a virtualized orphysical network device, repair or modify a firmware of the virtualizedor physical network device, and/or the like.

As further shown in FIG. 1D, and by reference number 168, servicemanagement platform 102 can provide an abstraction layer user interfaceto client device 104 for display. For example, based on the state ofSD-WAN deployment 106, service management platform 102 can generate auser interface, as described in more detail with regard to FIG. 1E, thatis vendor agnostic to enable a user to control aspects of a networkingenvironment including one or more services. In this way, servicemanagement platform 102 can enable control of SD-WAN deployment 106, canprovide information identifying a recommendation for resolving an issueof SD-WAN deployment 106, can provide information identifying aresolution automatically implemented for SD-WAN deployment 106, and/orthe like.

As shown in FIG. 1E, abstraction layer user interface 170 can provide aparticular view of information regarding SD-WAN deployment 106. As shownby reference number 172, abstraction layer user interface 170 caninclude information identifying a current network deployment. Forexample, abstraction layer user interface 170 can provide informationidentifying networks of SD-WAN deployment 106, information identifyingone or more services and/or policies that are active or inactive forSD-WAN deployment 106, and/or the like. As shown by reference number174, abstraction layer user interface 170 can include informationidentifying a set of test results. For example, abstraction layer userinterface 170 can indicate that a hardware diagnostics test is passed, anetwork connectivity diagnostics test is failed, and a virtualizednetwork services test is passed.

As further shown in FIG. 1E, and by reference number 176, abstractionlayer user interface 170 can provide a chat-based management console toenable an operator to use service management platform 102. For example,abstraction layer user interface 170 can provide a natural language chatinterface for controlling SD-WAN deployment 106. In this case, servicemanagement platform 102 can use a natural language processingfunctionality to process instructions from and provide feedback to auser of a client device. In some implementations, service managementplatform 102 can detect an issue, and can provide information regardingthe issue via the chat interface. As shown, service management platform102 can use the natural language processing functionality to indicatethat service management platform 102 has detected two issues, and toidentify a first issue as relating to connectivity of uCPE 126, and asecond issue as relating to slow connectivity for end-point clientdevices 120 of the headquarters network.

In some implementations, service management platform 102 can identify anissue based on processing data relating to the SD-WAN deployment, andcan perform a set of diagnostic tests to evaluate the issue. In someimplementations, service management platform 102 can perform the set ofdiagnostics tests hierarchically. For example, service managementplatform 102 can perform first tests on hardware of the SD-WANdeployment (e.g., a hardware diagnostics evaluation), second tests onnetwork connectivity of the SD-WAN deployment (e.g., a networkconnectivity diagnostics evaluation), third tests on virtualized networkservices of the SD-WAN deployment (e.g., a virtualized network servicesdiagnostics evaluation), and/or the like. In this way, servicemanagement platform 102 prioritizes potential issues based on apredicted severity with regard to a quantity of users affected, autilization of computing resources wasted, and/or the like. In someimplementations, service management platform 102 can perform end-to-endtesting of the SD-WAN deployment using access to virtualized networkservices, virtualized networking devices, and/or the like of the SD-WANdeployment. For example, service management platform 102 can perform oneor more tests regarding device cloud manageability, device controllerhealth, device WAN transport (e.g., by performing primary pathconnectivity testing, secondary path connectivity testing, bandwidthstatus, speed testing, traceroute testing, real-time packet monitoring,etc.), and/or the like. Additionally, or alternatively, servicemanagement platform 102 can perform one or more tests regarding avirtualized private network status (e.g., status of a site-to-sitevirtualized private network, a multiprotocol label switching networkvirtualized private network, etc.), a device local area networkconnectivity (e.g., an interface connectivity test, a dynamic hostconfiguration protocol status test), and/or the like. Additionally, oralternatively, service management platform 102 can perform one or moretests regarding a device health status (e.g., a processing utilization,memory utilization, network interface status, etc.), an end-userapplication session service level agreement status (e.g., a bandwidthtest, a latency test, a jitter test, etc.), and/or the like.

In some implementations, based on performing diagnostics, servicemanagement platform 102 can detect an event, and analyze the event todetermine that an issue is occurring with the virtualized networkservice. For example, based on the analytics model of SD-WAN operation,described above, service management platform 102 can determine that adeviation from a service level agreement indicates an issue with avirtualized network service. In this case, service management platform102 can determine a recommendation relating to remediating the issue.For example, service management platform 102 can use the naturallanguage processing functionality to indicate that recommendations forresolving the issue include restarting uCPE 126 and increasing abandwidth allocation for the gateway device 128 enabling communicationbetween uCPE 122 and the orchestration cloud network.

In some implementations, using the analytics model of SD-WAN operationand based on results of a set of diagnostic tests, service managementplatform 102 can determine that an adjustment to a device parameter isrecommended to remediate the issue. Additionally, or alternatively,service management platform 102 can recommend resetting or restarting avirtualized customer premises equipment and/or a virtualized networkfunction associated therewith. Additionally, or alternatively, servicemanagement platform 102 can recommend initiating a trouble ticket toassign an engineer to manually resolve the issue. In this case, servicemanagement platform 102 can automatically create the trouble ticket andprovide results of the set of diagnostic tests to reduce an amount oftime and/or manual effort to manually resolve the issue.

As indicated above, FIGS. 1A-1E are provided merely as examples. Otherexamples can differ from what was described with regard to FIGS. 1A-1E.

FIG. 2 is a diagram of an example environment 200 in which systemsand/or methods, described herein, can be implemented. As shown in FIG.2, environment 200 can include a client device 210, a cloud computingenvironment 220, a computing resource 225, a service management platform230, a network 240, and an SD-WAN deployment 250. Devices of environment200 can interconnect via wired connections, wireless connections, or acombination of wired and wireless connections.

Client device 210 includes one or more devices capable of receiving,generating, storing, processing, and/or providing information associatedwith monitoring operation of SD-WAN deployment 250. For example, clientdevice 210 can include a communication and/or computing device, such asa mobile phone (e.g., a smart phone, a radiotelephone, etc.), a laptopcomputer, a tablet computer, a handheld computer, a gaming device, awearable communication device (e.g., a smart wristwatch, a pair of smarteyeglasses, etc.), or a similar type of device.

Service management platform 230 includes one or more computing resourcesassigned to perform end-to-end monitoring of SD-WAN deployment 250. Forexample, service management platform 230 can be a platform implementedby cloud computing environment 220 that can detect issues, troubleshootthe issues, resolve the issues, monitor provisioning of virtualizednetwork services, and/or the like. Additionally, or alternatively,service management platform 230 can provide an application programminginterface to enable client device 210 to access functions of servicemanagement platform 230, and can translate commands from client device210 via the application programming interface to one or more othercommands for one or more vendor-specific application programminginterfaces. In this way, service management platform 230 can abstractvendor provided environments for management network services, networkfunctions, cloud environments, network transport services, and/or thelike, thereby avoiding a necessity for new software any time a newvendor is selected to provide a portion of SD-WAN deployment 250. Insome implementations, service management platform 230 is implemented bycomputing resources 225 of cloud computing environment 220.

Service management platform 230 can include a server device or a groupof server devices. In some implementations, service management platform230 can be hosted in cloud computing environment 220. Notably, whileimplementations described herein describe service management platform230 as being hosted in cloud computing environment 220, in someimplementations, service management platform 230 can be non-cloud-basedor can be partially cloud-based.

Cloud computing environment 220 includes an environment that deliverscomputing as a service, whereby shared resources, services, etc. can beprovided to manage SD-WAN deployment 250. Cloud computing environment220 can provide computation, software, data access, storage, and/orother services that do not require end-user knowledge of a physicallocation and configuration of a system and/or a device that delivers theservices. As shown, cloud computing environment 220 can include servicemanagement platform 230 and computing resource 225.

Computing resource 225 includes one or more personal computers,workstation computers, server devices, or another type of computationand/or communication device. In some implementations, computing resource225 can host service management platform 230. The cloud resources caninclude compute instances executing in computing resource 225, storagedevices provided in computing resource 225, data transfer devicesprovided by computing resource 225, etc. In some implementations,computing resource 225 can communicate with other computing resources225 via wired connections, wireless connections, or a combination ofwired and wireless connections.

As further shown in FIG. 2, computing resource 225 can include a groupof cloud resources, such as one or more applications (“APPs”) 225-1, oneor more virtual machines (“VMs”) 225-2, virtualized storage (“VSs”)225-3, one or more hypervisors (“HYPs”) 225-4, or the like.

Application 225-1 includes one or more software applications that can beprovided to or accessed by client device 210. Application 225-1 caneliminate a need to install and execute the software applications onclient device 210. For example, application 225-1 can include softwareassociated with service management platform 230 and/or any othersoftware capable of being provided via cloud computing environment 220.In some implementations, one application 225-1 can send/receiveinformation to/from one or more other applications 225-1, via virtualmachine 225-2.

Virtual machine 225-2 includes a software implementation of a machine(e.g., a computer) that executes programs like a physical machine.Virtual machine 225-2 can be either a system virtual machine or aprocess virtual machine, depending upon use and degree of correspondenceto any real machine by virtual machine 225-2. A system virtual machinecan provide a complete system platform that supports execution of acomplete operating system (“OS”). A process virtual machine can executea single program, and can support a single process. In someimplementations, virtual machine 225-2 can execute on behalf of a user(e.g., client device 210), and can manage infrastructure of cloudcomputing environment 220, such as data management, synchronization, orlong-duration data transfers.

Virtualized storage 225-3 includes one or more storage systems and/orone or more devices that use virtualization techniques within thestorage systems or devices of computing resource 225. In someimplementations, within the context of a storage system, types ofvirtualizations can include block virtualization and filevirtualization. Block virtualization can refer to abstraction (orseparation) of logical storage from physical storage so that the storagesystem can be accessed without regard to physical storage orheterogeneous structure. The separation can permit administrators of thestorage system flexibility in how the administrators manage storage forend users. File virtualization can eliminate dependencies between dataaccessed at a file level and a location where files are physicallystored. This can enable optimization of storage use, serverconsolidation, and/or performance of non-disruptive file migrations.

Hypervisor 225-4 provides hardware virtualization techniques that allowmultiple operating systems (e.g., “guest operating systems”) to executeconcurrently on a host computer, such as computing resource 225.Hypervisor 225-4 can present a virtual operating platform to the guestoperating systems, and can manage the execution of the guest operatingsystems. Multiple instances of a variety of operating systems can sharevirtualized hardware resources.

Network 240 includes one or more wired and/or wireless networks. Forexample, network 240 can include a cellular network (e.g., a long-termevolution (LTE) network, a code division multiple access (CDMA) network,a 3G network, a 4G network, a 5G network, another type of nextgeneration network, etc.), a public land mobile network (PLMN), a localarea network (LAN), a wide area network (WAN), a metropolitan areanetwork (MAN), a telephone network (e.g., the Public Switched TelephoneNetwork (PSTN)), a private network, an ad hoc network, an intranet, theInternet, a fiber optic-based network, a cloud computing network, or thelike, and/or a combination of these or other types of networks.

SD-WAN deployment 250 includes one or more wired and/or wirelessnetworks. For example, network 240 can include computing resourcesallocated to provide virtualized network services in an SD-WAN computingenvironment. In some implementations, SD-WAN deployment 250 can includemultiple different vendor provided hardware devices, multiple differentvendor provided software services, and/or the like. In someimplementations, SD-WAN deployment can be implemented using computingresources 225 of cloud computing environment 220 and/or another cloudcomputing environment.

The number and arrangement of devices and networks shown in FIG. 2 areprovided as an example. In practice, there can be additional devicesand/or networks, fewer devices and/or networks, different devices and/ornetworks, or differently arranged devices and/or networks than thoseshown in FIG. 2. Furthermore, two or more devices shown in FIG. 2 can beimplemented within a single device, or a single device shown in FIG. 2can be implemented as multiple, distributed devices. Additionally, oralternatively, a set of devices (e.g., one or more devices) ofenvironment 200 can perform one or more functions described as beingperformed by another set of devices of environment 200.

FIG. 3 is a diagram of example components of a device 300. Device 300can correspond client device 210, computing resource 225, and/or servicemanagement platform 230. In some implementations, client device 210,computing resource 225, and/or service management platform 230 caninclude one or more devices 300 and/or one or more components of device300. As shown in FIG. 3, device 300 can include a bus 310, a processor320, a memory 330, a storage component 340, an input component 350, anoutput component 360, and a communication interface 370.

Bus 310 includes a component that permits communication among thecomponents of device 300. Processor 320 is implemented in hardware,firmware, or a combination of hardware and software. Processor 320 is acentral processing unit (CPU), a graphics processing unit (GPU), anaccelerated processing unit (APU), a microprocessor, a microcontroller,a digital signal processor (DSP), a field-programmable gate array(FPGA), an application-specific integrated circuit (ASIC), or anothertype of processing component. In some implementations, processor 320includes one or more processors capable of being programmed to perform afunction. Memory 330 includes a random access memory (RAM), a read onlymemory (ROM), and/or another type of dynamic or static storage device(e.g., a flash memory, a magnetic memory, and/or an optical memory) thatstores information and/or instructions for use by processor 320.

Storage component 340 stores information and/or software related to theoperation and use of device 300. For example, storage component 340 caninclude a hard disk (e.g., a magnetic disk, an optical disk, amagneto-optic disk, and/or a solid state disk), a compact disc (CD), adigital versatile disc (DVD), a floppy disk, a cartridge, a magnetictape, and/or another type of non-transitory computer-readable medium,along with a corresponding drive.

Input component 350 includes a component that permits device 300 toreceive information, such as via user input (e.g., a touch screendisplay, a keyboard, a keypad, a mouse, a button, a switch, and/or amicrophone). Additionally, or alternatively, input component 350 caninclude a sensor for sensing information (e.g., a global positioningsystem (GPS) component, an accelerometer, a gyroscope, and/or anactuator). Output component 360 includes a component that providesoutput information from device 300 (e.g., a display, a speaker, and/orone or more light-emitting diodes (LEDs)).

Communication interface 370 includes a transceiver-like component (e.g.,a transceiver and/or a separate receiver and transmitter) that enablesdevice 300 to communicate with other devices, such as via a wiredconnection, a wireless connection, or a combination of wired andwireless connections. Communication interface 370 can permit device 300to receive information from another device and/or provide information toanother device. For example, communication interface 370 can include anEthernet interface, an optical interface, a coaxial interface, aninfrared interface, a radio frequency (RF) interface, a universal serialbus (USB) interface, a wireless local area network interface, a cellularnetwork interface, or the like.

Device 300 can perform one or more processes described herein. Device300 can perform these processes based on processor 320 executingsoftware instructions stored by a non-transitory computer-readablemedium, such as memory 330 and/or storage component 340. Acomputer-readable medium is defined herein as a non-transitory memorydevice. A memory device includes memory space within a single physicalstorage device or memory space spread across multiple physical storagedevices.

Software instructions can be read into memory 330 and/or storagecomponent 340 from another computer-readable medium or from anotherdevice via communication interface 370. When executed, softwareinstructions stored in memory 330 and/or storage component 340 can causeprocessor 320 to perform one or more processes described herein.Additionally, or alternatively, hardwired circuitry can be used in placeof or in combination with software instructions to perform one or moreprocesses described herein. Thus, implementations described herein arenot limited to any specific combination of hardware circuitry andsoftware.

The number and arrangement of components shown in FIG. 3 are provided asan example. In practice, device 300 can include additional components,fewer components, different components, or differently arrangedcomponents than those shown in FIG. 3. Additionally, or alternatively, aset of components (e.g., one or more components) of device 300 canperform one or more functions described as being performed by anotherset of components of device 300.

FIG. 4 is a flow chart of an example process 400 for virtualized networkservice management and diagnostics. In some implementations, one or moreprocess blocks of FIG. 4 can be performed by a service managementplatform (e.g., service management platform 230). In someimplementations, one or more process blocks of FIG. 4 can be performedby another device or a group of devices separate from or including aservice management platform (e.g., service management platform 230),such as a client device (e.g., client device 210) and a computingresource (e.g., computing resource 225).

As shown in FIG. 4, process 400 can include monitoring, for asoftware-defined networking wide area network (SD-WAN) deployment, a setof virtualized network services of the SD-WAN deployment (block 410).For example, the service management platform (e.g., using computingresource 225, processor 320, input component 350, output component 360,communication interface 370, and/or the like) can monitor, for asoftware-defined networking wide area network (SD-WAN) deployment, a setof virtualized network services of the SD-WAN deployment, as describedabove.

As further shown in FIG. 4, process 400 can include applying, concurrentwith monitoring the set of virtualized network services, a set ofdiagnostic tests to evaluate the set of virtualized network services(block 420). For example, the service management platform (e.g., usingcomputing resource 225, processor 320, output component 360,communication interface 370, and/or the like) can apply, concurrent withmonitoring the set of virtualized network services, a set of diagnostictests to evaluate the set of virtualized network services, as describedabove.

As further shown in FIG. 4, process 400 can include detecting, based onmonitoring the set of virtualized network services and in connectionwith applying the set of diagnostic tests, an event associated with avirtualized network service of the set of virtualized network services(block 430). For example, the service management platform (e.g., usingcomputing resource 225, processor 320, input component 350,communication interface 370, and/or the like) can detect, based onmonitoring the set of virtualized network services and in connectionwith applying the set of diagnostic tests, an event associated with avirtualized network service of the set of virtualized network services,as described above.

As further shown in FIG. 4, process 400 can include analyzing, using ananalytics model of SD-WAN operation, the event associated with thevirtualized network service (block 440). For example, the servicemanagement platform (e.g., using computing resource 225, processor 320,memory 330, storage component 340, and/or the like) can analyze, usingan analytics model of SD-WAN operation, the event associated with thevirtualized network service, as described above.

As further shown in FIG. 4, process 400 can include identifying, basedon analyzing the event associated with the virtualized network service,an issue associated with the virtualized network service (block 450).For example, the service management platform (e.g., using computingresource 225, processor 320, memory 330, storage component 340, and/orthe like) can identify, based on analyzing the event associated with thevirtualized network service, an issue associated with the virtualizednetwork service, as described above.

As further shown in FIG. 4, process 400 can include determining, basedon the analytics model of SD-WAN operation, a recommendation relating toremediating the issue associated with the virtualized network service(block 460). For example, the service management platform (e.g., usingcomputing resource 225, processor 320, memory 330, storage component340, and/or the like) can determine, based on the analytics model ofSD-WAN operation, a recommendation relating to remediating the issueassociated with the virtualized network service, as described above.

As further shown in FIG. 4, process 400 can include generating anabstraction layer user interface to represent the set of virtualizednetwork services and to convey the recommendation relating toremediating the issue associated with the virtualized network service(block 470). For example, the service management platform (e.g., usingcomputing resource 225, processor 320, memory 330, storage component340, and/or the like) can generate an abstraction layer user interfaceto represent the set of virtualized network services and to convey therecommendation relating to remediating the issue associated with thevirtualized network service, as described above.

As further shown in FIG. 4, process 400 can include implementing, afterproviding the abstraction layer user interface, the recommendation toremediate the issue associated with the virtualized network service(block 480). For example, the service management platform (e.g., usingcomputing resource 225, processor 320, output component 360,communication interface 370, and/or the like) can implement, afterproviding the abstraction layer user interface, the recommendation toremediate the issue associated with the virtualized network service, asdescribed above.

Process 400 can include additional implementations, such as any singleimplementation or any combination of implementations described belowand/or in connection with one or more other processes describedelsewhere herein.

In some implementations, when applying the set of diagnostic tests, theservice management platform can apply the set of diagnostic testsaccording to a set of configured instructions, where the set ofconfigured instructions include one or more conditional instructionsrelating to virtualized network services of the set of virtualizednetwork services.

In some implementations, the service management platform can configurethe set of diagnostic tests based on types of virtualized networkservices deployed in the set of virtualized network services. In someimplementations, the service management platform can dynamicallygenerate code to apply the set of diagnostic tests, and, when applyingthe set of diagnostic tests, can execute the code to apply the set ofdiagnostic tests.

In some implementations, the service management platform can generatethe analytics model of SD-WAN operation based on results of a pluralityof diagnostic tests, and, when applying the set of diagnostic tests, canupdate the analytics model of SD-WAN operation based on results of theset of diagnostic tests.

In some implementations, when identifying the issue, the servicemanagement platform can evaluate a hierarchy of the SD-WAN deployment toidentify the issue, and the hierarchy for evaluation can include atleast one of a hardware diagnostics evaluation, a network connectivitydiagnostics evaluation, or a virtualized network services diagnosticsevaluation.

In some implementations, the service management platform can identify anew network service for deployment in the SD-WAN deployment, and can addthe new network service into a group of monitored network servicesevaluated using the set of diagnostic tests, where the group ofmonitored network services includes a set of physical network servicesand the set of virtualized network services.

Although FIG. 4 shows example blocks of process 400, in someimplementations, process 400 can include additional blocks, fewerblocks, different blocks, or differently arranged blocks than thosedepicted in FIG. 4. Additionally, or alternatively, two or more of theblocks of process 400 can be performed in parallel.

The foregoing disclosure provides illustration and description, but isnot intended to be exhaustive or to limit the implementations to theprecise form disclosed. Modifications and variations can be made inlight of the above disclosure or can be acquired from practice of theimplementations.

As used herein, the term “component” is intended to be broadly construedas hardware, firmware, or a combination of hardware and software.

Some implementations are described herein in connection with thresholds.As used herein, satisfying a threshold can refer to a value beinggreater than the threshold, more than the threshold, higher than thethreshold, greater than or equal to the threshold, less than thethreshold, fewer than the threshold, lower than the threshold, less thanor equal to the threshold, equal to the threshold, or the like.

Certain user interfaces have been described herein and/or shown in thefigures. A user interface can include a graphical user interface, anon-graphical user interface, a text-based user interface, or the like.A user interface can provide information for display. In someimplementations, a user can interact with the information, such as byproviding input via an input component of a device that provides theuser interface for display. In some implementations, a user interfacecan be configurable by a device and/or a user (e.g., a user can changethe size of the user interface, information provided via the userinterface, a position of information provided via the user interface,etc.). Additionally, or alternatively, a user interface can bepre-configured to a standard configuration, a specific configurationbased on a type of device on which the user interface is displayed,and/or a set of configurations based on capabilities and/orspecifications associated with a device on which the user interface isdisplayed.

To the extent the aforementioned implementations collect, store, oremploy personal information of individuals, it should be understood thatsuch information shall be used in accordance with all applicable lawsconcerning protection of personal information. Additionally, thecollection, storage, and use of such information can be subject toconsent of the individual to such activity, for example, through wellknown “opt-in” or “opt-out” processes as can be appropriate for thesituation and type of information. Storage and use of personalinformation can be in an appropriately secure manner reflective of thetype of information, for example, through various encryption andanonymization techniques for particularly sensitive information.

It will be apparent that systems and/or methods, described herein, canbe implemented in different forms of hardware, firmware, or acombination of hardware and software. The actual specialized controlhardware or software code used to implement these systems and/or methodsis not limiting of the implementations. Thus, the operation and behaviorof the systems and/or methods were described herein without reference tospecific software code—it being understood that software and hardwarecan be designed to implement the systems and/or methods based on thedescription herein.

Even though particular combinations of features are recited in theclaims and/or disclosed in the specification, these combinations are notintended to limit the disclosure of various implementations. In fact,many of these features can be combined in ways not specifically recitedin the claims and/or disclosed in the specification. Although eachdependent claim listed below can directly depend on only one claim, thedisclosure of various implementations includes each dependent claim incombination with every other claim in the claim set.

No element, act, or instruction used herein should be construed ascritical or essential unless explicitly described as such. Also, as usedherein, the articles “a” and “an” are intended to include one or moreitems, and can be used interchangeably with “one or more.” Furthermore,as used herein, the term “set” is intended to include one or more items(e.g., related items, unrelated items, a combination of related andunrelated items, etc.), and can be used interchangeably with “one ormore.” Where only one item is intended, the phrase “only one” or similarlanguage is used. Also, as used herein, the terms “has,” “have,”“having,” or the like are intended to be open-ended terms. Further, thephrase “based on” is intended to mean “based, at least in part, on”unless explicitly stated otherwise.

What is claimed is:
 1. A device, comprising: one or more memories; andone or more processors, communicatively coupled to the one or morememories, to: monitor, for a software-defined networking wide areanetwork (SD-WAN) deployment, a set of virtualized network services ofthe SD-WAN deployment; apply, concurrent with monitoring the set ofvirtualized network services, a set of diagnostic tests to evaluate theset of virtualized network services; detect, based on monitoring the setof virtualized network services and in connection with applying the setof diagnostic tests, an event associated with a virtualized networkservice of the set of virtualized network services; analyze, using ananalytics model of SD-WAN operation, the event associated with thevirtualized network service; identify, based on analyzing the eventassociated with the virtualized network service, an issue associatedwith the virtualized network service; determine, based on the analyticsmodel of SD-WAN operation, a recommendation relating to remediating theissue associated with the virtualized network service; generate anabstraction layer user interface to represent the set of virtualizednetwork services and to convey the recommendation relating toremediating the issue associated with the virtualized network service;and implement, after providing the abstraction layer user interface, therecommendation to remediate the issue associated with the virtualizednetwork service.
 2. The device of claim 1, wherein the one or moreprocessors, when applying the set of diagnostic tests, are to: apply theset of diagnostic tests according to a set of configured instructions,wherein the set of configured instructions include one or moreconditional instructions relating to virtualized network services of theset of virtualized network services.
 3. The device of claim 1, whereinthe one or more processors are further to: configure the set ofdiagnostic tests based on types of virtualized network services deployedin the set of virtualized network services.
 4. The device of claim 1,wherein the one or more processors are further to: dynamically generatecode to apply the set of diagnostic tests; and wherein the one or moreprocessors, when applying the set of diagnostic tests, are to: executethe code to apply the set of diagnostic tests.
 5. The device of claim 1,wherein the one or more processors are further to: generate theanalytics model of SD-WAN operation based on results of a plurality ofdiagnostic tests; and wherein the one or more processors, when applyingthe set of diagnostic tests, are to: update the analytics model ofSD-WAN operation based on results of the set of diagnostic tests.
 6. Thedevice of claim 1, wherein the one or more processors, when identifyingthe issue, are to: evaluate a hierarchy of the SD-WAN deployment toidentify the issue, and wherein the hierarchy for evaluation includes atleast one of: a hardware diagnostics evaluation, a network connectivitydiagnostics evaluation, or a virtualized network services diagnosticsevaluation.
 7. The device of claim 1, wherein the one or more processorsare further to: identify a new network service for deployment in theSD-WAN deployment; and add the new network service into a group ofmonitored network services evaluated using the set of diagnostic tests,wherein the group of monitored network services includes a set ofphysical network services and the set of virtualized network services.8. A method, comprising: monitoring, by a device and for asoftware-defined networking wide area network (SD-WAN) deployment, a setof virtualized network services of the SD-WAN deployment; applying, bythe device and concurrent with monitoring the set of virtualized networkservices, a set of diagnostic tests to evaluate the set of virtualizednetwork services; detecting, by the device and based on monitoring theset of virtualized network services and in connection with applying theset of diagnostic tests, an event associated with a virtualized networkservice of the set of virtualized network services; analyzing, by thedevice using an analytics model of SD-WAN operation, the eventassociated with the virtualized network service; identifying, by thedevice and based on analyzing the event associated with the virtualizednetwork service, an issue associated with the virtualized networkservice; determining, by the device based on the analytics model ofSD-WAN operation, a recommendation relating to remediating the issueassociated with the virtualized network service; generating, by thedevice, an abstraction layer user interface to represent the set ofvirtualized network services and to convey the recommendation relatingto remediating the issue associated with the virtualized networkservice; and implementing, by the device and after providing theabstraction layer user interface, the recommendation to remediate theissue associated with the virtualized network service.
 9. The method ofclaim 8, wherein applying the set of diagnostic tests comprises:applying the set of diagnostic tests according to a set of configuredinstructions, wherein the set of configured instructions include one ormore conditional instructions relating to virtualized network servicesof the set of virtualized network services.
 10. The method of claim 8,further comprising: configuring the set of diagnostic tests based ontypes of virtualized network services deployed in the set of virtualizednetwork services.
 11. The method of claim 8, further comprising:dynamically generating code to apply the set of diagnostic tests; andwherein applying the set of diagnostic tests comprises: executing thecode to apply the set of diagnostic tests.
 12. The method of claim 8,further comprising: generating the analytics model of SD-WAN operationbased on results of a plurality of diagnostic tests; and whereinapplying the set of diagnostic tests comprises: updating the analyticsmodel of SD-WAN operation based on results of the set of diagnostictests.
 13. The method of claim 8, wherein identifying the issuecomprises: evaluating a hierarchy of the SD-WAN deployment to identifythe issue, and wherein the hierarchy for evaluation includes at leastone of: a hardware diagnostics evaluation, a network connectivitydiagnostics evaluation, or a virtualized network services diagnosticsevaluation.
 14. The method of claim 8, further comprising: identifying anew network service for deployment in the SD-WAN deployment; and addingthe new network service into a group of monitored network servicesevaluated using the set of diagnostic tests, wherein the group ofmonitored network services includes a set of physical network servicesand the set of virtualized network services.
 15. A non-transitorycomputer-readable medium storing one or more instructions, the one ormore instructions comprising: one or more instructions that, whenexecuted by one or more processors of a gateway device, cause the one ormore processors to: monitor, for a software-defined networking wide areanetwork (SD-WAN) deployment, a set of virtualized network services ofthe SD-WAN deployment; apply, concurrent with monitoring the set ofvirtualized network services, a set of diagnostic tests to evaluate theset of virtualized network services; detect, based on monitoring the setof virtualized network services and in connection with applying the setof diagnostic tests, an event associated with a virtualized networkservice of the set of virtualized network services; analyze, using ananalytics model of SD-WAN operation, the event associated with thevirtualized network service; identify, based on analyzing the eventassociated with the virtualized network service, an issue associatedwith the virtualized network service; determine, based on the analyticsmodel of SD-WAN operation, a recommendation relating to remediating theissue associated with the virtualized network service; generate anabstraction layer user interface to represent the set of virtualizednetwork services and to convey the recommendation relating toremediating the issue associated with the virtualized network service;and implement, after providing the abstraction layer user interface, therecommendation to remediate the issue associated with the virtualizednetwork service.
 16. The non-transitory computer-readable medium ofclaim 15, wherein the one or more instructions, that cause the one ormore processors to apply the set of diagnostic tests, cause the one ormore processors to: apply the set of diagnostic tests according to a setof configured instructions, wherein the set of configured instructionsinclude one or more conditional instructions relating to virtualizednetwork services of the set of virtualized network services.
 17. Thenon-transitory computer-readable medium of claim 15, wherein the one ormore instructions, when executed by the one or more processors, furthercause the one or more processors to: configure the set of diagnostictests based on types of virtualized network services deployed in the setof virtualized network services.
 18. The non-transitorycomputer-readable medium of claim 15, wherein the one or moreinstructions, when executed by the one or more processors, further causethe one or more processors to: dynamically generate code to apply theset of diagnostic tests; and wherein the instructions, that cause theone or more processors to apply the set of diagnostic tests, cause theone or more processors to: execute the code to apply the set ofdiagnostic tests.
 19. The non-transitory computer-readable medium ofclaim 15, wherein the one or more instructions, when executed by the oneor more processors, further cause the one or more processors to:generate the analytics model of SD-WAN operation based on results of aplurality of diagnostic tests; and wherein the one or more instructions,that cause the one or more processors to apply the set of diagnostictests, cause the one or more processors to: update the analytics modelof SD-WAN operation based on results of the set of diagnostic tests. 20.The non-transitory computer-readable medium of claim 15, wherein the oneor more instructions, that cause the one or more processors to identifythe issue, cause the one or more processors to: evaluate a hierarchy ofthe SD-WAN deployment to identify the issue, and wherein the hierarchyfor evaluation includes at least one of: a hardware diagnosticsevaluation, a network connectivity diagnostics evaluation, or avirtualized network services diagnostics evaluation.